package cn.jtfadmin.core.modules.sys.service;

import cn.jtfadmin.base.lang.common.security.UserDetails;
import cn.jtfadmin.core.enums.OperateTypeEnum;

import java.util.Map;

/**
 * 系统日志
 *
 * @author jtf
 * @since 1.0
 */
public interface SysLogActionService {

    /**
     * 增加登录成功日志
     * @param userDetails
     */
    void logLoginSuccess(UserDetails userDetails);

    /**
     * 增加登录退出日志
     * @param userDetails
     */
    void logLoginout(UserDetails userDetails);

    /**
     * 新增操作日志
     *
     * @param logContent         日志内容
     * @param costTime           时间
     * @param logOperateTypeEnum 操作类型
     * @param param              参数
     * @param e                  异常
     */
    void newOperateLog(String logContent, Long costTime, OperateTypeEnum logOperateTypeEnum, String param,
                       Exception e);




}
